<?php
/**
 * O Termo de Refer�ncia � um documento que cont�m informa��es referentes ao processo de compra.
 * Essa p�gina cria o PDF do termo de refer�ncia para o Processo de compra de chave-prim�ria $_GET['processoId'].
 * @param $_GET['processoId'] Chave-prim�ria no banco de dados do processo.
 */
if( !function_exists('__autoload') )
{
    function __autoload($class_name) {
    require_once $class_name . '.php';
    }
}

include("ezpdf/class.ezpdf.php"); 

$processo = new Processo();
$processoEscolhido = $processo->CarregarProcesso( $_GET['processoId'] );

$pdf = new cezpdf('A4');
$pdf->selectFont('ezpdf/fonts/Helvetica-Bold.afm'); 

$tmp = array(
'b'=>'Courier-Bold.afm'
,'i'=>'Courier-Oblique.afm'
,'bi'=>'Courier-BoldOblique.afm'
,'ib'=>'Courier-BoldOblique.afm'
,'bb'=>'Times-Roman.afm'
);

$pdf->setFontFamily('Courier.afm',$tmp);

for ($i = 0; $i < count($processoEscolhido->detalhamento->itens); $i++)
{
	if( is_a($processoEscolhido->detalhamento->itens[$i]['objeto'],'Material') )
	{
		$array[] = array('item'=>($i+1), 'sicaf'=>$processoEscolhido->detalhamento->itens[$i]['objeto']->codigo, 'nome'=>$processoEscolhido->detalhamento->itens[$i]['objeto']->nome." - ".$processoEscolhido->detalhamento->itens[$i]['objeto']->descricao,'unidade'=>$processoEscolhido->detalhamento->itens[$i]['objeto']->medida['sigla'].' - '.$processoEscolhido->detalhamento->itens[$i]['objeto']->medida['capacidade'].' - '.$processoEscolhido->detalhamento->itens[$i]['objeto']->medida['medida'], 'quantidade'=>$processoEscolhido->detalhamento->itens[$i]['quantidade']);		
	}
    else
    {
        $array[] = array('item'=>($i+1), 'sicaf'=>$processoEscolhido->detalhamento->itens[$i]['objeto']->codigo, 'nome'=>$processoEscolhido->detalhamento->itens[$i]['objeto']->nome." - ".$processoEscolhido->detalhamento->itens[$i]['objeto']->descricao,'unidade'=>'', 'quantidade'=>'');
    }
}

$cont = 0;
$limitePagina = 60;
$margemTextoPrincipal = 20;
$margemSubTexto = 35;
$margemSubSubTexto = $margemSubTexto+10; 


// Cabe�alho com informa��es do minist�rio da educa��o
if(file_exists('templates/IFF.jpg'))
{
    $x = 260;
    $pdf->addJpegFromFile('templates/IFF.jpg',$x,$pdf->y-30,100,0);
}

$pdf->ezSetDY(-30);
$pdf->ezText('MINISTÉRIO DA EDUCAÇÃO', 8, array('justification'=>'center'));
$pdf->ezText('SECRETARIA DE EDUCAÇÃO MÉDIA E TECNOLÓGICA', 8, array('justification'=>'center'));
$pdf->ezText('INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA', 8, array('justification'=>'center'));
$pdf->ezText('PRÓ-REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO', 8, array('justification'=>'center'));

// Texto: Termo de refer�ncia
$pdf->ezSetDY(-40);
$pdf->ezText('TERMO DE REFERÊNCIA', 8, array('justification'=>'center'));

// Texo: Objeto
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
$cont++;
$pdf->ezSetDY(-10);
$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
$pdf->ezText('<b>'.$cont.') Objeto:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->objeto, 10);

// Texo: Objetivo
$cont++;
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-($yAnterior-$yAtual));
$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
$pdf->ezText('<b>'.$cont.') Objetivo:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->objetivo, 10);

// Texo: Fundamento Legal
if( $processoEscolhido->fundamentoLegal != '' )
{
	$cont++;
	if( $pdf->y < $limitePagina )
	{
		$pdf->ezNewPage();
		$pdf->ezSetDY(-30);
	}
	else
		$pdf->ezSetDY(-($yAnterior-$yAtual));
	$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
	$pdf->ezText('<b>'.$cont.') Fundamento Legal:</b>', 10);
	$pdf->ezSetDY(-5);
	$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
	$yAnterior = $pdf->y;
	$yAtual = $pdf->ezText($processoEscolhido->fundamentoLegal, 10);
}

// Texo: Justificativa da contrata��o
if( $processoEscolhido->justificativa != '' )
{
	$cont++;
	if( $pdf->y < $limitePagina )
	{
		$pdf->ezNewPage();
		$pdf->ezSetDY(-30);
	}
	else
		$pdf->ezSetDY(-($yAnterior-$yAtual));
	$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
	$pdf->ezText('<b>'.$cont.') Justificativa:</b>', 10);
	$pdf->ezSetDY(-5);
	$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
	$yAnterior = $pdf->y;
	$yAtual = $pdf->ezText($processoEscolhido->justificativa, 10);
}

// Tabela de materiais e servi�os
$cont++;
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
$pdf->ezText('<b>'.$cont.') Descri��o da compra ou servi�o:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$yAnterior  = $pdf->ezText(''.$cont.'.1) Detalhamento ', 10);

$pdf->ezSetDY(-($yAnterior-$yAtual)-60);
$titulos = array('item' =>'ITEM', 'sicaf'=>'COD. SICAF',  'nome' => 'MATERIAL OU SERVI�OS', 'unidade'=>'UND', 'quantidade'=>'QUANT.');
$opcoes = array('splitRows'=>1,'xPos'=>570,'showLines'=>2,'shaded'=>0,'width' => '515', 'fontSize' => '9', 'xOrientation' => ('left'),'cols'=>array('sicaf'=>array('justification'=>'center'), 'item'=>array('justification'=>'center'), 'unidade'=>array('justification'=>'center'), 'quantidade'=>array('justification'=>'center')));
$yAtual = $pdf->ezTable($array,$titulos,'',$opcoes); //define os dados que ir�o na tabela, titulos e outras especificacoes


// Texto: Das garantias
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-30);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$pdf->ezText('<b>'.$cont.'.2) Das garantias:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->garantias, 10);

// Texto: Assist�ncia t�cnica
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$pdf->ezText( '<b>'.$cont.'.3) Assist�ncia t�cnica:</b>', 10);
$pdf->ezSetMargins( 0, 0, $margemSubSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->assistenciaTecnica, 10);

// Texto: Recebimento de bens e/ou servi�os
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$pdf->ezText( '<b>'.$cont.'.4) Recebimento de Bens e/ou Servi�os (Local, Prazo, Condi��es):</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->infoRecebimento, 10);

// Texto: Recebimento de bens e/ou servi�os
if( $pdf->y < $limitePagina )
{
		$pdf->ezNewPage();
		$pdf->ezSetDY(-30);
}

else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$pdf->ezText( '<b>'.$cont.'.5) Valor refer�ncia:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText('R$ '.number_format($processoEscolhido->valorTotal/100,2,",","."), 10);

// Texto: Responsabilidades
$cont++;
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
$pdf->ezText('<b>'.$cont.') Responsabilidades:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$pdf->ezText(''.$cont.'.1) Do IFAL ', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->responsabilidadeIFAL, 10);

// Texto: Do contratado
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$pdf->ezText(''.$cont.'.2) Do Contratado ', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->responsabilidadeContratado, 10);

// Texto: San��es
$cont++;
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
$pdf->ezText('<b>'.$cont.') San��es:</b>', 10);
$pdf->ezSetDY(-5);
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$yAnterior = $pdf->y;
$yAtual = $pdf->ezText($processoEscolhido->sancoes, 10);

// Texto: San��es
$cont++;
if( $pdf->y < $limitePagina )
{
	$pdf->ezNewPage();
	$pdf->ezSetDY(-30);
}
else
	$pdf->ezSetDY(-20);
$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
$pdf->ezText('<b>'.$cont.') Do pagamento:</b>', 10);
$pdf->ezSetDY(-5);
$yAnterior = $pdf->y;
$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
$yAtual = $pdf->ezText($processoEscolhido->pagamento, 10);

// Texto: Outras informa��es
if ($processoEscolhido->outrasInformacoes != '' ) 
{
	$cont++;
	if( $pdf->y < $limitePagina )
	{
		$pdf->ezNewPage();
		$pdf->ezSetDY(-30);
	}
	else
		$pdf->ezSetDY(-20);
	$pdf->ezSetMargins( 0, 0, $margemTextoPrincipal, 0);
	$pdf->ezText('<b>'.$cont.') Outras informa��es:</b>', 10);
	$pdf->ezSetDY(-5);
	$yAnterior = $pdf->y;
	$pdf->ezSetMargins( 0, 0, $margemSubTexto, 0);
	$yAtual = $pdf->ezText($processoEscolhido->outrasInformacoes, 10);
}


$pdf->ezStream(); //Escreve a saida do PDF via stream;
?>